package com.mzj.saas.sdk.refund.vo;

/**
 * 微信退款请求参数
 * @author hp
 *
 */
public class WxRefund {
	
	
	public WxRefund() {}
	
	public WxRefund(String appId,String mchId,String mchApiKey,String transactionId,String outTradeNo,
			String outRefundNo,Integer totalFee,Integer refundFee,String notifyUrl,byte[] mchCertificate,String refundApi,String refundqueryApi) {
		this.appId = appId;
		this.mchId = mchId;
		this.mchApiKey = mchApiKey;
		this.transactionId = transactionId;
		this.outTradeNo = outTradeNo;
		this.outRefundNo = outRefundNo;
		this.totalFee = totalFee;
		this.refundFee = refundFee;
		this.notifyUrl = notifyUrl;
		this.mchCertificate = mchCertificate;
		this.refundApi = refundApi;
		this.refundqueryApi = refundqueryApi;
	}
	
	/**
	 * 微信分配的公众账号ID
	 */
	private String appId;
	
	/**
	 * 商户号
	 */
	private String mchId;
	/**
	 * API密钥
	 */
	private String mchApiKey;
	/**
	 * 退款：微信支付订单号(与商户订单号二选一)
	 * 查询退款：(与商户订单号,商户退款单号,微信退款单号四选一)
	 */
	private String transactionId;
	/**
	 * 退款：商户订单号(与微信支付订单号二选一)
	 * 查询退款：(微信支付订单号,商户退款单号,微信退款单号四选一)
	 */
	private String outTradeNo;
	/**
	 * 商户退款单号
	 * 查询退款：(微信支付订单号,商户订单号,微信退款单号四选一)
	 */
	private String outRefundNo;
	/**
	 * 订单总金额，单位为分
	 */
	private Integer totalFee;
	/**
	 * 退款总金额，订单总金额，单位为分
	 */
	private Integer refundFee;
	/**
	 * 回调地址
	 */
	private String notifyUrl;
	/**
	 * 证书
	 */
	private byte[] mchCertificate;
	
	/**
	 * 退款请求地址
	 */
	private String refundApi; 
	
	/**
	 * 微信退款单号
	 * 查询退款：(微信支付订单号,商户订单号,商户退款单号四选一)
	 */
	private String refundId;
	
	/**
	 * 查询退款请求地址
	 */
	private String refundqueryApi;
	
	public String getRefundId() {
		return refundId;
	}

	public void setRefundId(String refundId) {
		this.refundId = refundId;
	}

	public String getAppId() {
		return appId;
	}
	public void setAppId(String appId) {
		this.appId = appId;
	}
	public String getMchId() {
		return mchId;
	}
	public void setMchId(String mchId) {
		this.mchId = mchId;
	}
	public String getMchApiKey() {
		return mchApiKey;
	}
	public void setMchApiKey(String mchApiKey) {
		this.mchApiKey = mchApiKey;
	}
	public String getTransactionId() {
		return transactionId;
	}
	public void setTransactionId(String transactionId) {
		this.transactionId = transactionId;
	}
	public String getOutTradeNo() {
		return outTradeNo;
	}
	public void setOutTradeNo(String outTradeNo) {
		this.outTradeNo = outTradeNo;
	}
	public String getOutRefundNo() {
		return outRefundNo;
	}
	public void setOutRefundNo(String outRefundNo) {
		this.outRefundNo = outRefundNo;
	}
	public Integer getTotalFee() {
		return totalFee;
	}
	public void setTotalFee(Integer totalFee) {
		this.totalFee = totalFee;
	}
	public Integer getRefundFee() {
		return refundFee;
	}
	public void setRefundFee(Integer refundFee) {
		this.refundFee = refundFee;
	}
	public String getNotifyUrl() {
		return notifyUrl;
	}
	public void setNotifyUrl(String notifyUrl) {
		this.notifyUrl = notifyUrl;
	}

	public byte[] getMchCertificate() {
		return mchCertificate;
	}

	public void setMchCertificate(byte[] mchCertificate) {
		this.mchCertificate = mchCertificate;
	}

	public String getRefundApi() {
		return refundApi;
	}

	public void setRefundApi(String refundApi) {
		this.refundApi = refundApi;
	}

	public String getRefundqueryApi() {
		return refundqueryApi;
	}

	public void setRefundqueryApi(String refundqueryApi) {
		this.refundqueryApi = refundqueryApi;
	}
}
